﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ProyectoVeranoAECAasp.Clases;

namespace ProyectoVeranoAECAasp.Vistas
{
    public partial class GestionEspaciosManual : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            this.ButtonEditar.Attributes.Add("onClick",
               Master.mensajesConfirmacion("Esta seguro de querer ejecutar esta operación"));
            this.ButtonCrear.Attributes.Add("onClick",
               Master.mensajesConfirmacion("Esta seguro de querer ejecutar esta operación"));
            this.ButtonCancelar.Attributes.Add("onClick",
               Master.mensajesConfirmacion("Esta seguro de querer ejecutar esta operación"));
            this.ButtonAceptar.Attributes.Add("onClick",
               Master.mensajesConfirmacion("Esta seguro de querer ejecutar esta operación"));

            this.Label2.Text = Global.get_nombreUserLog();
            this.LoginEtiquetaGroup2.Text = Global.get_loginUserLog();
            this.Label3.Text = Global.get_tipoUserLog();
        }

        protected void LinkButtonSalir_Click(object sender, EventArgs e)
        {
            Session["UsuarioID"] = null;
            Session["TipoUsuarioGlobal"] = null;
            Response.Redirect("/Vistas/Autenticacion.aspx");
        }

        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            TextBoxSeleccionado.Text = GridView1.SelectedRow.Cells[3].Text;
            //LabelErrorSeleccion.Text = "";
            
        }

        protected void ButtonCancelar_Click(object sender, EventArgs e)
        {
            vaciar();
        }

        private void vaciar()
        {
            PanelEdicion.Visible = false;
            PanelSeleccion.Visible = true;
            DropDownListSede.SelectedIndex = 0;
            DropDownListArea.SelectedIndex = 0;
            DropDownListDisponibilidad.SelectedIndex = 0;
            TextBoxSeleccionado.Text = "";
            GridView1.DataBind();
            GridView1.SelectedIndex = -1;
            Global.set_opcionEdicionEspacio("");
        }

        protected void ButtonEditar_Click(object sender, EventArgs e)
        {
            if (TextBoxSeleccionado.Text.CompareTo("") == 0)
            {
                Master.mensajesAlerta("Primero debe seleccionar un espacio");
            }
            else
            {
                PanelEdicion.Visible = true;
                PanelSeleccion.Visible = false;
                DetailsView1.DataBind();
                DropDownListSede.SelectedValue = DetailsView1.Rows[1].Cells[1].Text;
                DropDownListSede.DataBind();
                DropDownListArea.SelectedValue = DetailsView1.Rows[2].Cells[1].Text;
                DropDownListDisponibilidad.SelectedValue = DetailsView1.Rows[3].Cells[1].Text;
                TextBoxIdentificador.Text = DetailsView1.Rows[4].Cells[1].Text;
                Global.set_opcionEdicionEspacio("Editar");
            }
        }

        protected void ButtonCrear_Click(object sender, EventArgs e)
        {
            
            PanelEdicion.Visible = true;
            PanelSeleccion.Visible = false;
            Global.set_opcionEdicionEspacio("Crear");
            DropDownListSede.DataBind();
            DropDownListArea.DataBind();
            TextBoxIdentificador.Text= DropDownListArea.Items[0].Text + "-";
        }

        protected void ButtonAceptar_Click(object sender, EventArgs e)
        {
            if (TextBoxIdentificador.Text.CompareTo("") == 0)
            {
                Master.mensajesAlerta("Primero debe indicar el nombre del espacio");
            }
            else
            {
                if (Global.get_opcionEdicionEspacio().CompareTo("Editar") == 0)
                {
                    SqlDataSource1.UpdateParameters.Clear();
                    SqlDataSource1.UpdateParameters.Add(@"ID_Espacio", DetailsView1.Rows[0].Cells[1].Text);
                    SqlDataSource1.UpdateParameters.Add(@"ID_EstadoEspXEspacio", DetailsView1.Rows[0].Cells[1].Text);
                    SqlDataSource1.UpdateParameters.Add(@"ID_EstadoEspacio", DropDownListDisponibilidad.SelectedValue);
                    SqlDataSource1.UpdateParameters.Add(@"ID_AreaEspacio", DropDownListArea.SelectedValue);
                    SqlDataSource1.UpdateParameters.Add(@"NombreEspacio", TextBoxIdentificador.Text);
                    SqlDataSource1.Update();
                    vaciar();
                    Master.mensajesAlerta("Se actualizó correctamente el espacio");
                }
                else if (Global.get_opcionEdicionEspacio().CompareTo("Crear") == 0)
                {
                    SqlDataSource1.InsertParameters.Clear();
                    SqlDataSource1.InsertParameters.Add(@"ID_EstadoEspacio", DropDownListDisponibilidad.SelectedValue);
		            SqlDataSource1.InsertParameters.Add(@"ID_AreaEspacio", DropDownListArea.SelectedValue);
                    SqlDataSource1.InsertParameters.Add(@"NombreEspacio", TextBoxIdentificador.Text);
                    SqlDataSource1.Insert();
                    vaciar();
                    Master.mensajesAlerta("Se creo correctamente el espacio");
                }
                else
                    vaciar();
            }
        }

        protected void DropDownListArea_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Global.get_opcionEdicionEspacio().CompareTo("Crear") == 0)
                TextBoxIdentificador.Text = DropDownListArea.SelectedItem.Text + "-";
        }

        protected void GridView1_PageIndexChanged(object sender, EventArgs e)
        {
            GridView1.SelectedIndex = -1;
        }

        protected void GridView1_Sorted(object sender, EventArgs e)
        {
            GridView1.SelectedIndex = -1;
        }
    }
}